iT邦幫忙

2021 iThome 鐵人賽

DAY 3
1
Modern Web

初學者跪著學JavaScript系列 第 3

初學者跪著學JavaScript Day3 : 變數Variable、宣吿var

  • 分享至 

  • xImage
  •  

身為不會講客家話的純種客家人,接下來的日子每天學一個客家話單字,希望28天後客語也可以同時變強
最近阿公教了一個很難記住的客家話:閃電:攝浪 ㄋ一ㄚ˙ ㄋㄤ(gnav6 nang1)

變數介紹

每次學程式時老師起手式都會為先教變數,所以不意外就是要先寫變數XD/images/emoticon/emoticon25.gif
變數也是識別字( identifiers )

就是把值指定給一個變數,值可以變動也可以不變動

JS變數名字不能和保留字( Reserved word )、關鍵字( keyword )一樣

保留字有哪些?


來源:w3schools

變數就取的 break 來試試看

報錯給你看

但後來保留字有變動,某些保留字刪除了

立馬把原本是保留字 : int

取為變數名試試看


來源:w3schools

變數有區分大小寫

所以 apple 和 Apple 會不同

const apple = 123;
const Apple = '567';
console.log('apple', apple);//apple 123
console.log('Apple', Apple);//Apple 567

使用變數要宣告嗎?

就算不使用宣告也可以用變數,但前面加嚴格模式會報錯,大部分都建議不要使用不宣告方式來創變數

'use strict';
age = 17;

宣告:var、let、const

以前宣告變數是用var

ES6(大改版)後可以使用let const

先說說 var

  • 有hosting的關係所以變數可以比宣告還早被執行且不會報錯

  • 可以重覆使用變數

  • 函式scope

hoisting:宣告會上提到函式頂端

會比宣告還早,來使用 consoe.log 看看

console.log(apple)//10
var apple = 10;
var apple = 10;
var apple = 11;
var apple = 12;
console.log(apple);//12

函式scope:像柵欄,他的柵欄是function
沒有柵欄發生什麼事?
因為var是可以重覆使用變數,變數的值就會變動

if( ){ } 裡面的food會改到外面的food

var food = 'banana';
if (true) {
    var food = 'apple';
}
console.log(food);//apple

使用柵欄:function
function 內的test不會改到外面的test

var test = 'hi';
function sayHi() {
    var test = 'hello';
}
sayHi();
console.log(test);//hi

好!結束!let、const下一篇再來說

開始下跪,畫起來

/images/emoticon/emoticon07.gif

來源:犀牛、w3school、mdn
https://javascript.info/var


上一篇
初學者跪著學JavaScript Day2
下一篇
初學者跪著學JavaScript Day4 : 宣告:let、const
系列文
初學者跪著學JavaScript30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

2 則留言

0
Chiahsuan
iT邦新手 4 級 ‧ 2021-09-18 14:37:20

大頭貼好青春啊~~~/images/emoticon/emoticon24.gif

看你的文章,腦袋會自動有wendy大大的配音耶~超奇妙XD

wendy iT邦新手 2 級 ‧ 2021-09-21 14:07:27 檢舉

厲害吧

1
Hooo
iT邦新手 4 級 ‧ 2021-09-18 16:16:48

哈哈哈哈最後的跪拜畫面太驚悚了吧

wendy iT邦新手 2 級 ‧ 2021-09-21 14:07:40 檢舉

哈哈哈哈

我要留言

立即登入留言